package com.cskaoyan.javase.oop2._2polymorphic._1basic;

/**
 *  多态的访问
 *  指的是存在父类引用指向不同子类对象时的访问特征
 *
 *  "对象名点访问父子类同名成员方法"访问时,有没有多态现象?
 *  存在多态现象
 *
 *  用一句话来总结，对象名点成员方法的访问特征：
 * 编译（访问范围）看左边，运行时（调用结果）看右边。
 *
 *
 * @since 14:37
 * @author wuguidong@cskaoyan.onaliyun.com
 */
public class Demo2 {
    public static void main(String[] args) {
        Animal a;
        a = new Cat();
        a.eat();
        a = new Dog();
        a.eat();
    }
}

class Animal {
    void eat() {
        System.out.println("吃饭!");
    }
}

class Dog extends Animal {
    @Override
    void eat() {
        System.out.println("狗吃狗粮!");
    }
}

class Cat extends Animal {
    @Override
    void eat() {
        System.out.println("猫吃猫粮!");
    }
}